package com.xysl.api.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 广告记录对象 zl_advertisement
 *
 * @author xysl
 * @date 2025-01-20
 */
@Data
@Schema(description = "学幼数联app广告对象")
@TableName(value = "zl_advertisement")
public class Advertisement
{
    private static final long serialVersionUID = 1L;

    private Long id;

    @Schema(description = "广告标题")
    private String advTitle;

    @Schema(description = "广告文案")
    private String advContent;

    @Schema(description = "广告描述")
    private String advDesc;

    @Schema(description = "集团id")
    private String groupId;

    @Schema(description = "区域id")
    private String siteId;

    @Schema(description = "广告位置;1-主页,2-招生首页")
    private String advPosition;

    @Schema(description = "广告类型;1-图片轮播;2-滚动发光字;3-开屏广告;4-小图标广告")
    private String advType;

    @Schema(description = "广告状态;0-审核中;1-投放中;2-暂停投放;3-已过期")
    private String status;

    @Schema(description = "广告开始时间")
    private String startTime;

    @Schema(description = "广告结束时间")
    private String endTime;

    @Schema(description = "审核人")
    private String auditUser;

    @Schema(description = "审核时间", format = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date auditTime;

    @Schema(description = "审核意见")
    private String auditReason;

    @Schema(description = "广告排序")
    private String advSort;

    @Schema(description = "广告价格")
    private BigDecimal advFee;

    @Schema(description = "创建时间", format = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    @Schema(description = "更新时间", format = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updatedAt;

    @Schema(description = "附件列表")
    @TableField(exist = false)
    private List<AdvertisementAnnex> annexes = new ArrayList<AdvertisementAnnex>();

}
